#include <allegro.h>
#include "plataforma.h"
#include "nelib.h"

plataforma::plataforma(int x, int y, int w, int h, int vel_x, int vel_y, int dx, int dy, char *bmp) : elemento(x, y, w, h) {
	this->x0 = this->x;
	this->y0 = this->y;
	this->vel_x = vel_x;
	this->vel_y = vel_y;
	this->dx = dx;
	this->dy = dy;
	this->img = new imagem(bmp);
	if (dx >= 0)
		dir_x = 1;
	else
		dir_x = -1;
	if (dy >= 0)
		dir_y = 1;
	else
		dir_y = -1;
	
}

void plataforma::mover() {
	x += MINI(nat(dx) - nat(x - x0), vel_x) * dir_x;
	if (nat(x - x0) == nat(dx) || x == x0)
		dir_x *= -1;

	y += MINI(nat(dy) - nat(y - y0), vel_y) * dir_y;
	if (nat(y - y0) == nat(dy) || y == y0)
		dir_y *= -1;
}
